package methodref02;

import org.junit.Test;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.function.Consumer;
import java.util.function.Function;

/**
 * 静态方法引用
 *   类名::静态方法名
 *   Arrays,Collections
 *   Arrays类中
 *   static String toString(int[] a)
 *           返回指定数组内容的字符串表示形式。
 *   Collections类:
 *  public static <T extends Comparable<? super T>> void sort(List<T> list)
 *            根据元素的自然顺序 对指定列表按升序进行排序。
 */
public class MethodRefDemo03 {
	@Test
	public void test01() {
		int[] arr = {3, 7, 9};
		//Function<int[], String> f = array -> Arrays.toString(array);
		Function<int[], String> f = Arrays::toString;
		System.out.println(f.apply(arr));
	}

	@Test
	public void test02() {
		List<Integer> integers = Arrays.asList(1, 7, 12, 5, 23);
		//Consumer<List<Integer>> c = list -> Collections.sort(list);
		Consumer<List<Integer>> c = Collections::sort;
		c.accept(integers);

		System.out.println(integers);
	}
}
